<?php

namespace app\admin\model;

use think\Model;
use think\Session;

class Admin extends Model
{

    // 开启自动写入时间戳字段
    protected $autoWriteTimestamp = 'int';
    // 定义时间戳字段名
    protected $createTime = 'createtime';
    protected $updateTime = 'updatetime';

    // 追加属性
    protected $append = [
        'organization_text',
    ];

    /**
     * 重置用户密码
     * @author baiyouwen
     */
    public function resetPassword($uid, $NewPassword)
    {
        $passwd = $this->encryptPassword($NewPassword);
        $ret = $this->where(['id' => $uid])->update(['password' => $passwd]);
        return $ret;
    }

    // 密码加密
    protected function encryptPassword($password, $salt = '', $encrypt = 'md5')
    {
        return $encrypt($password . $salt);
    }

    public function getOrganizationTextAttr($value, $data)
    {
        return Qrganization::where('id',$data['organization'])->value('name');
    }


    //获取信息
    public function getInfo($id=null,$ids=null,$username=null,$nickname=null,$status=null,$order="id desc") {
        $allowFields = ['id', 'username','nickname', 'avatar', 'email', 'logintime', 'loginip', 'status', 'organization'];
        $where = [];
        if($id){$where['id'] = ['=',$id];}
        if($ids){$where['id'] = ['in',$ids];}
        if($username){$where['username'] = ['=',$username];}
        if($nickname){$where['nickname'] = ['=',$nickname];}
        if($status){$where['status'] = ['=',$status];}
        $info = collection(self::where($where)->order($order)->field($allowFields)->select())->toArray();
        return $info;
    }

}
